<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Repetier-Firmware: src/ArduinoAVR/Repetier/fastio.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="icon128.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Repetier-Firmware
   &#160;<span id="projectnumber">1.0.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('fastio_8h.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a>  </div>
  <div class="headertitle">
<div class="title">fastio.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;avr/io.h&gt;</code><br />
</div>
<p><a href="fastio_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ade838261e182e0f4ce159183a526f4c4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(PIN)&#160;&#160;&#160;(1 &lt;&lt; PIN)</td></tr>
<tr class="memdesc:ade838261e182e0f4ce159183a526f4c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">MASKING- returns <img class="formulaInl" alt="$2^PIN$" src="form_0.png"/>.  <a href="#ade838261e182e0f4ce159183a526f4c4">More...</a><br /></td></tr>
<tr class="separator:ade838261e182e0f4ce159183a526f4c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a716f4ca15267c9a5d479514a1de83018"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#a716f4ca15267c9a5d479514a1de83018">_READ</a>(IO)&#160;&#160;&#160;((bool)(DIO ## IO ## _RPORT &amp; <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN)))</td></tr>
<tr class="memdesc:a716f4ca15267c9a5d479514a1de83018"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read a pin.  <a href="#a716f4ca15267c9a5d479514a1de83018">More...</a><br /></td></tr>
<tr class="separator:a716f4ca15267c9a5d479514a1de83018"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb82a1ce7f87b692abfb5e41d6810f2b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#acb82a1ce7f87b692abfb5e41d6810f2b">_WRITE</a>(IO,  v)&#160;&#160;&#160;do { if (v) {DIO ##  IO ## _WPORT |= <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN); } else {DIO ##  IO ## _WPORT &amp;= ~<a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN); }; } while (0)</td></tr>
<tr class="memdesc:acb82a1ce7f87b692abfb5e41d6810f2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">write to a pin  <a href="#acb82a1ce7f87b692abfb5e41d6810f2b">More...</a><br /></td></tr>
<tr class="separator:acb82a1ce7f87b692abfb5e41d6810f2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac80afd6e46adcab936eb01031e25043c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#ac80afd6e46adcab936eb01031e25043c">_TOGGLE</a>(IO)&#160;&#160;&#160;do {DIO ##  IO ## _RPORT = <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN); } while (0)</td></tr>
<tr class="memdesc:ac80afd6e46adcab936eb01031e25043c"><td class="mdescLeft">&#160;</td><td class="mdescRight">toggle a pin  <a href="#ac80afd6e46adcab936eb01031e25043c">More...</a><br /></td></tr>
<tr class="separator:ac80afd6e46adcab936eb01031e25043c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab76d0856bcf266de49269a05b96fb79b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#ab76d0856bcf266de49269a05b96fb79b">_SET_INPUT</a>(IO)&#160;&#160;&#160;do {DIO ##  IO ## _DDR &amp;= ~<a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN); } while (0)</td></tr>
<tr class="memdesc:ab76d0856bcf266de49269a05b96fb79b"><td class="mdescLeft">&#160;</td><td class="mdescRight">set pin as input  <a href="#ab76d0856bcf266de49269a05b96fb79b">More...</a><br /></td></tr>
<tr class="separator:ab76d0856bcf266de49269a05b96fb79b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:affb369f6db19ae9eab9a4c440b19c6d0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#affb369f6db19ae9eab9a4c440b19c6d0">_SET_OUTPUT</a>(IO)&#160;&#160;&#160;do {DIO ##  IO ## _DDR |=  <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN); } while (0)</td></tr>
<tr class="memdesc:affb369f6db19ae9eab9a4c440b19c6d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">set pin as output  <a href="#affb369f6db19ae9eab9a4c440b19c6d0">More...</a><br /></td></tr>
<tr class="separator:affb369f6db19ae9eab9a4c440b19c6d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a81799334b3ecca1e9822f2c5e0c808ff"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#a81799334b3ecca1e9822f2c5e0c808ff">_GET_INPUT</a>(IO)&#160;&#160;&#160;((DIO ## IO ## _DDR &amp; <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN)) == 0)</td></tr>
<tr class="memdesc:a81799334b3ecca1e9822f2c5e0c808ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">check if pin is an input  <a href="#a81799334b3ecca1e9822f2c5e0c808ff">More...</a><br /></td></tr>
<tr class="separator:a81799334b3ecca1e9822f2c5e0c808ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a145970250cd701164115c116682ddcd4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#a145970250cd701164115c116682ddcd4">_GET_OUTPUT</a>(IO)&#160;&#160;&#160;((DIO ## IO ## _DDR &amp; <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN)) != 0)</td></tr>
<tr class="memdesc:a145970250cd701164115c116682ddcd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">check if pin is an output  <a href="#a145970250cd701164115c116682ddcd4">More...</a><br /></td></tr>
<tr class="separator:a145970250cd701164115c116682ddcd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9716cca366b99de7c0d101eeab24c967"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#a9716cca366b99de7c0d101eeab24c967">READ</a>(IO)&#160;&#160;&#160;<a class="el" href="fastio_8h.html#a716f4ca15267c9a5d479514a1de83018">_READ</a>(IO)</td></tr>
<tr class="memdesc:a9716cca366b99de7c0d101eeab24c967"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read a pin wrapper.  <a href="#a9716cca366b99de7c0d101eeab24c967">More...</a><br /></td></tr>
<tr class="separator:a9716cca366b99de7c0d101eeab24c967"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d38c0667426652d3fa2eb62f23e1591"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#a3d38c0667426652d3fa2eb62f23e1591">WRITE</a>(IO,  v)&#160;&#160;&#160;<a class="el" href="fastio_8h.html#acb82a1ce7f87b692abfb5e41d6810f2b">_WRITE</a>(IO, v)</td></tr>
<tr class="memdesc:a3d38c0667426652d3fa2eb62f23e1591"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write to a pin wrapper.  <a href="#a3d38c0667426652d3fa2eb62f23e1591">More...</a><br /></td></tr>
<tr class="separator:a3d38c0667426652d3fa2eb62f23e1591"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a608adcba13929aae3476f1de99498566"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#a608adcba13929aae3476f1de99498566">PULLUP</a>(IO,  v)&#160;&#160;&#160;<a class="el" href="fastio_8h.html#acb82a1ce7f87b692abfb5e41d6810f2b">_WRITE</a>(IO, v)</td></tr>
<tr class="separator:a608adcba13929aae3476f1de99498566"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af060bb41ede214a91d237e63f3e080d4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#af060bb41ede214a91d237e63f3e080d4">TOGGLE</a>(IO)&#160;&#160;&#160;<a class="el" href="fastio_8h.html#ac80afd6e46adcab936eb01031e25043c">_TOGGLE</a>(IO)</td></tr>
<tr class="memdesc:af060bb41ede214a91d237e63f3e080d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">toggle a pin wrapper  <a href="#af060bb41ede214a91d237e63f3e080d4">More...</a><br /></td></tr>
<tr class="separator:af060bb41ede214a91d237e63f3e080d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa76df25ccdb2d113a057c8c305399cc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#afa76df25ccdb2d113a057c8c305399cc">SET_INPUT</a>(IO)&#160;&#160;&#160;<a class="el" href="fastio_8h.html#ab76d0856bcf266de49269a05b96fb79b">_SET_INPUT</a>(IO)</td></tr>
<tr class="memdesc:afa76df25ccdb2d113a057c8c305399cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">set pin as input wrapper  <a href="#afa76df25ccdb2d113a057c8c305399cc">More...</a><br /></td></tr>
<tr class="separator:afa76df25ccdb2d113a057c8c305399cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bdb8759f0e85e88956ac23262e0916b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#a4bdb8759f0e85e88956ac23262e0916b">SET_OUTPUT</a>(IO)&#160;&#160;&#160;<a class="el" href="fastio_8h.html#affb369f6db19ae9eab9a4c440b19c6d0">_SET_OUTPUT</a>(IO)</td></tr>
<tr class="memdesc:a4bdb8759f0e85e88956ac23262e0916b"><td class="mdescLeft">&#160;</td><td class="mdescRight">set pin as output wrapper  <a href="#a4bdb8759f0e85e88956ac23262e0916b">More...</a><br /></td></tr>
<tr class="separator:a4bdb8759f0e85e88956ac23262e0916b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8239afa0238afc5ccad6202f14dde224"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#a8239afa0238afc5ccad6202f14dde224">GET_INPUT</a>(IO)&#160;&#160;&#160;<a class="el" href="fastio_8h.html#a81799334b3ecca1e9822f2c5e0c808ff">_GET_INPUT</a>(IO)</td></tr>
<tr class="memdesc:a8239afa0238afc5ccad6202f14dde224"><td class="mdescLeft">&#160;</td><td class="mdescRight">check if pin is an input wrapper  <a href="#a8239afa0238afc5ccad6202f14dde224">More...</a><br /></td></tr>
<tr class="separator:a8239afa0238afc5ccad6202f14dde224"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2d22ed088f7f41f71de346dbeae57fc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastio_8h.html#af2d22ed088f7f41f71de346dbeae57fc">GET_OUTPUT</a>(IO)&#160;&#160;&#160;<a class="el" href="fastio_8h.html#a145970250cd701164115c116682ddcd4">_GET_OUTPUT</a>(IO)</td></tr>
<tr class="memdesc:af2d22ed088f7f41f71de346dbeae57fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">check if pin is an output wrapper  <a href="#af2d22ed088f7f41f71de346dbeae57fc">More...</a><br /></td></tr>
<tr class="separator:af2d22ed088f7f41f71de346dbeae57fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a81799334b3ecca1e9822f2c5e0c808ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a81799334b3ecca1e9822f2c5e0c808ff">&#9670;&nbsp;</a></span>_GET_INPUT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define _GET_INPUT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;((DIO ## IO ## _DDR &amp; <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN)) == 0)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>check if pin is an input </p>

</div>
</div>
<a id="a145970250cd701164115c116682ddcd4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a145970250cd701164115c116682ddcd4">&#9670;&nbsp;</a></span>_GET_OUTPUT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define _GET_OUTPUT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;((DIO ## IO ## _DDR &amp; <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN)) != 0)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>check if pin is an output </p>

</div>
</div>
<a id="a716f4ca15267c9a5d479514a1de83018"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a716f4ca15267c9a5d479514a1de83018">&#9670;&nbsp;</a></span>_READ</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define _READ</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;((bool)(DIO ## IO ## _RPORT &amp; <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Read a pin. </p>

</div>
</div>
<a id="ab76d0856bcf266de49269a05b96fb79b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab76d0856bcf266de49269a05b96fb79b">&#9670;&nbsp;</a></span>_SET_INPUT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define _SET_INPUT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;do {DIO ##  IO ## _DDR &amp;= ~<a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN); } while (0)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>set pin as input </p>

</div>
</div>
<a id="affb369f6db19ae9eab9a4c440b19c6d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#affb369f6db19ae9eab9a4c440b19c6d0">&#9670;&nbsp;</a></span>_SET_OUTPUT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define _SET_OUTPUT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;do {DIO ##  IO ## _DDR |=  <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN); } while (0)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>set pin as output </p>

</div>
</div>
<a id="ac80afd6e46adcab936eb01031e25043c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac80afd6e46adcab936eb01031e25043c">&#9670;&nbsp;</a></span>_TOGGLE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define _TOGGLE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;do {DIO ##  IO ## _RPORT = <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN); } while (0)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>toggle a pin </p>

</div>
</div>
<a id="acb82a1ce7f87b692abfb5e41d6810f2b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb82a1ce7f87b692abfb5e41d6810f2b">&#9670;&nbsp;</a></span>_WRITE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define _WRITE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">v&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;do { if (v) {DIO ##  IO ## _WPORT |= <a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN); } else {DIO ##  IO ## _WPORT &amp;= ~<a class="el" href="fastio_8h.html#ade838261e182e0f4ce159183a526f4c4">MASK</a>(DIO ## IO ## _PIN); }; } while (0)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>write to a pin </p>

</div>
</div>
<a id="a8239afa0238afc5ccad6202f14dde224"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8239afa0238afc5ccad6202f14dde224">&#9670;&nbsp;</a></span>GET_INPUT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GET_INPUT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="fastio_8h.html#a81799334b3ecca1e9822f2c5e0c808ff">_GET_INPUT</a>(IO)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>check if pin is an input wrapper </p>

</div>
</div>
<a id="af2d22ed088f7f41f71de346dbeae57fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af2d22ed088f7f41f71de346dbeae57fc">&#9670;&nbsp;</a></span>GET_OUTPUT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GET_OUTPUT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="fastio_8h.html#a145970250cd701164115c116682ddcd4">_GET_OUTPUT</a>(IO)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>check if pin is an output wrapper </p>

</div>
</div>
<a id="ade838261e182e0f4ce159183a526f4c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade838261e182e0f4ce159183a526f4c4">&#9670;&nbsp;</a></span>MASK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MASK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">PIN</td><td>)</td>
          <td>&#160;&#160;&#160;(1 &lt;&lt; PIN)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>MASKING- returns <img class="formulaInl" alt="$2^PIN$" src="form_0.png"/>. </p>

</div>
</div>
<a id="a608adcba13929aae3476f1de99498566"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a608adcba13929aae3476f1de99498566">&#9670;&nbsp;</a></span>PULLUP</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PULLUP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">v&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;<a class="el" href="fastio_8h.html#acb82a1ce7f87b692abfb5e41d6810f2b">_WRITE</a>(IO, v)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a9716cca366b99de7c0d101eeab24c967"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9716cca366b99de7c0d101eeab24c967">&#9670;&nbsp;</a></span>READ</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define READ</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="fastio_8h.html#a716f4ca15267c9a5d479514a1de83018">_READ</a>(IO)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Read a pin wrapper. </p>

</div>
</div>
<a id="afa76df25ccdb2d113a057c8c305399cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa76df25ccdb2d113a057c8c305399cc">&#9670;&nbsp;</a></span>SET_INPUT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SET_INPUT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="fastio_8h.html#ab76d0856bcf266de49269a05b96fb79b">_SET_INPUT</a>(IO)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>set pin as input wrapper </p>

</div>
</div>
<a id="a4bdb8759f0e85e88956ac23262e0916b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4bdb8759f0e85e88956ac23262e0916b">&#9670;&nbsp;</a></span>SET_OUTPUT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SET_OUTPUT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="fastio_8h.html#affb369f6db19ae9eab9a4c440b19c6d0">_SET_OUTPUT</a>(IO)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>set pin as output wrapper </p>

</div>
</div>
<a id="af060bb41ede214a91d237e63f3e080d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af060bb41ede214a91d237e63f3e080d4">&#9670;&nbsp;</a></span>TOGGLE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define TOGGLE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="fastio_8h.html#ac80afd6e46adcab936eb01031e25043c">_TOGGLE</a>(IO)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>toggle a pin wrapper </p>

</div>
</div>
<a id="a3d38c0667426652d3fa2eb62f23e1591"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d38c0667426652d3fa2eb62f23e1591">&#9670;&nbsp;</a></span>WRITE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WRITE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">IO, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">v&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;<a class="el" href="fastio_8h.html#acb82a1ce7f87b692abfb5e41d6810f2b">_WRITE</a>(IO, v)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Write to a pin wrapper. </p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cdf0096ae548159f0698b0a71289cf6c.html">ArduinoAVR</a></li><li class="navelem"><a class="el" href="dir_360d65efbdba454d299657bac363b72c.html">Repetier</a></li><li class="navelem"><a class="el" href="fastio_8h.html">fastio.h</a></li>
    <li class="footer">Generated on Tue Sep 19 2017 18:54:00 for Repetier-Firmware by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
